package com.mtons.mblog.modules.service;

import com.mtons.mblog.modules.data.PostTagVO;
import com.mtons.mblog.modules.data.TagVO;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

/**
 * @author : langhsu
 */
public interface TagService {

    /**
     * 标签分页
     * @param pageable 分页参数
     * @return
     */
    Page<TagVO> pagingQueryTags(Pageable pageable);

    /**
     * 标签分页
     * @param pageable 分页参数
     * @param tagName 标签名
     * @return
     */
    Page<PostTagVO> pagingQueryPosts(Pageable pageable, String tagName);

    /**
     * 更新标签
     * @param names
     * @param latestPostId
     */
    void batchUpdate(String names, long latestPostId);

    /**
     * 删除Mapping
     * @param postId 文章ID
     */
    void deteleMappingByPostId(long postId);
}
